package com.niiwoo.civet.account.service;

import com.niiwoo.civet.account.dto.common.MarketingDTO;
import com.niiwoo.civet.account.dto.request.MarketingDubboRequestDTO;
import com.niiwoo.civet.account.dto.response.ActivityOrderRespDTO;
import com.niiwoo.tripod.provider.exception.BizException;

import javax.validation.constraints.NotNull;
import java.util.concurrent.ExecutionException;

/**
 * @Description
 * @Author zq
 * @Date 2017/12/2
 */
public interface MarketingDubboService {

    void sendCashPrize(MarketingDubboRequestDTO requestDTO) throws BizException, ExecutionException, InterruptedException;

    void callCashPrize(MarketingDTO marketingDTO);

    void resendPrize();

    ActivityOrderRespDTO saveCashPrizeAndAsyncSend(MarketingDubboRequestDTO requestDTO) throws BizException, ExecutionException, InterruptedException;

    ActivityOrderRespDTO querySendCashPrizeInfo(@NotNull Long orderNo);

    /**
     * 覃江
     *
     * 根据流水号，查询activityOrder详情
     * @param requestNo 流水号
     * @return
     */
    ActivityOrderRespDTO queryActivityOrderByRequestNo(String requestNo);

    void queryTransactionPrize();
}
